---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------
/*
十进制转成十六进制数
查表法
*/
class ArrayDemo
{
public static void main(String[] args)
{
String hex = toHex(10);
System.out.println(hex);
System.out.println(Integer.toHexString(10));
}
//定义函数计算进制,返回字符串,未知数据转换的数
public static String toHex(int num){
//定义数组,当作表,使用
char[] table = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
//定义数组,存储查表后的字符
char[] result = new char[8];
//开始计算十六进制了
//定义指针,指向结果数组的最后索引
int pos = result.length - 1;
while(num!=0){
num & 15
int temp = num & 15 ;
//将结果temp,作为索引,查表
//存储到结果的数组中,从最后的索引存储
result[pos--]=table[temp];
//位移
num = num >>> 4;
}
String hex = "";
for(int x = pos+1 ; x < result.length; x++){
hex = hex+result[x];
}
return hex;
}
}
---------------------- ASP.Net+Android+IOS开发、.Net培训、期待与您交流! ----------------------